The present invention relates to packetized data networks, and more particularly, to characterizing one or more hops along a path traversed by a packet as it travels from a source to a destination.
Packet communications systems were originally designed to deliver packets of data that could be fragmented at a source and re-assembled at a destination with little concern for the delays and randomization of packets associated with the traversal of various paths from source to destination. That is, a packet system accepts data packets from a source and sends individual packets that are a part of a larger message through a network of routers. Each packet may take any one of several paths available through the network of routers. The packets may therefore arrive out of sequence, with different delays attributable to the different paths taken. Delivery of the information contained in an email, for example, is not sensitive to the normal delays or disordering of packets associated with such a delivery system.
However, some types of data are more sensitive to delays. Voice data, for example, is very sensitive to loss, latency, and jitter. One way to maximize quality of service and to thereby provide adequate performance for time-critical data, such as voice data, is by policy-based routing. In a policy-based routing scheme, certain packet-types are given higher priority and, therefore, are more likely to traverse the router network without undue latency, loss, or jitter.
Regardless of whether a communications system employs policy-based routing, diagnostic systems are required to determine the overall performance of the network and, in the case of a failure, to locate individual components, such as routers, that have failed. One approach to such network diagnoses is to use a scheme commonly referred to as “Traceroute”. Traceroute sends diagnostic packets having successively higher “time to live” (TTL) values to ports, such as high-numbered ports, unlikely to be providing services, at the destination. Each router that receives a packet decrements the TTL value and passes the packet along. Once the packet's TTL value reaches a threshold, a receiving router returns a “time-expired” message to the source. Eventually, when the source sends a packet having a high enough TTL value, the destination will return an error message indicating that services are not available on the high-address port. In this way, traceroute can delineate a path between a source and a destination through a network. However, there are invariably several possible paths through the network from the source to the destination, and there is no reason to believe that, once a communications session has ended, the traceroute diagnostic packets are going to traverse the same path as previously sent data packets. Additionally, firewalls and other security mechanisms recognize and deny access to traceroute packets. Furthermore, traceroute provides no measure of jitter or latency.
A system and method that provides a measure of loss, latency, and jitter, on a per-hop, and/or per path basis, particularly for time-sensitive packet delivery applications such as voice over Internet protocol (VOIP), would be particularly desirable.